{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Synthetic Data Generation\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Failed to find custom config on: c:\\Users\\pdasilva\\OneDrive - Microsoft\\Git repositories\\tinytroupe\\tinytroupe-core-opensource\\examples\\config.ini\n",
      "Now switching to default config file...\n",
      "Looking for config on: c:\\Users\\pdasilva\\OneDrive - Microsoft\\Git repositories\\tinytroupe\\tinytroupe-core-opensource\\examples\\..\\tinytroupe\\config.ini\n",
      "\n",
      "!!!!\n",
      "DISCLAIMER: TinyTroupe relies on Artificial Intelligence (AI) models to generate content. \n",
      "The AI models are not perfect and may produce inappropriate or inacurate results. \n",
      "For any serious or consequential use, please review the generated content before using it.\n",
      "!!!!\n",
      "\n"
     ]
    }
   ],
   "source": [
    "import json\n",
    "import sys\n",
    "import csv\n",
    "sys.path.append('..')\n",
    "\n",
    "\n",
    "import tinytroupe\n",
    "from tinytroupe.agent import TinyPerson\n",
    "from tinytroupe.environment import TinyWorld, TinySocialNetwork\n",
    "from tinytroupe.factory import TinyPersonFactory\n",
    "from tinytroupe.extraction import default_extractor as extractor\n",
    "from tinytroupe.extraction import ResultsReducer\n",
    "import tinytroupe.control as control"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's create the specific types of agents we need to collect data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "factory = TinyPersonFactory(\"A random knowledge worker in a company providing marketing services.\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:50:44,592 - tinytroupe - INFO - Starting the person generation based on that context: A random knowledge worker in a company providing marketing services.\n",
      "2024-11-04 22:50:45,256 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n",
      "2024-11-04 22:50:56,374 - tinytroupe - INFO - Starting the person generation based on that context: A random knowledge worker in a company providing marketing services.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Samantha is a 29 year old Content Strategist, Canadian, currently living in United States.\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:50:56,650 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Liam is a 42 year old Digital Marketing Specialist, Australian, currently living in United Kingdom.\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "2"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "people = []\n",
    "for i in range(2):\n",
    "    person = factory.generate_person(temperature=1.6)\n",
    "    print(person.minibio())\n",
    "    people.append(person)\n",
    "\n",
    "len(people)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "company = TinyWorld(\"Some Corp Inc.\", people)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "company.make_everyone_accessible()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">USER</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; Message each other to get work done.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mUSER\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m          > Message each other to get work done.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">USER</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; Message each other to get work done.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mUSER\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mLiam\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m          > Message each other to get work done.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "company.broadcast(\"Message each other to get work done.\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:10,010 - tinytroupe - INFO - [Some Corp Inc.] Running world simulation step 1 of 2.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ff00; text-decoration-color: #00ff00\">─────────────────────────────────────────── </span>Some Corp Inc. step <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span> of <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span><span style=\"color: #00ff00; text-decoration-color: #00ff00\"> ────────────────────────────────────────────</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[92m─────────────────────────────────────────── \u001b[0mSome Corp Inc. step \u001b[1;36m1\u001b[0m of \u001b[1;36m2\u001b[0m\u001b[92m ────────────────────────────────────────────\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:10,016 - tinytroupe - INFO - [Some Corp Inc.] No timedelta provided, so the datetime was not advanced.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:10,347 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #008000; text-decoration-color: #008000; text-decoration: underline\">Samantha</span><span style=\"color: #008000; text-decoration-color: #008000\"> acts: </span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">[</span><span style=\"color: #008000; text-decoration-color: #008000\">THINK</span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">]</span><span style=\"color: #008000; text-decoration-color: #008000\"> </span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">              &gt; I should consider how messaging can improve our workflow and collaboration.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;32mSamantha\u001b[0m\u001b[32m acts: \u001b[0m\u001b[1;32m[\u001b[0m\u001b[32mTHINK\u001b[0m\u001b[1;32m]\u001b[0m\u001b[32m \u001b[0m\n",
       "\u001b[32m              > I should consider how messaging can improve our workflow and collaboration.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:14,839 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold; text-decoration: underline\">Samantha</span><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\"> acts: [TALK] </span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">              &gt; Messaging can be a great tool for quick updates and clarifications. It's important</span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">              &gt; to ensure everyone is on the same page and has access to the information they need.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;4;38;5;40mSamantha\u001b[0m\u001b[1;38;5;40m acts: \u001b[0m\u001b[1;38;5;40m[\u001b[0m\u001b[1;38;5;40mTALK\u001b[0m\u001b[1;38;5;40m]\u001b[0m\u001b[1;38;5;40m \u001b[0m\n",
       "\u001b[1;38;5;40m              > Messaging can be a great tool for quick updates and clarifications. It's important\u001b[0m\n",
       "\u001b[1;38;5;40m              > to ensure everyone is on the same page and has access to the information they need.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:19,808 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; text-decoration: underline\">Samantha</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> acts: </span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">[</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\">DONE</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">]</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> </span>\n",
       "\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;38;5;252mSamantha\u001b[0m\u001b[38;5;252m acts: \u001b[0m\u001b[1;38;5;252m[\u001b[0m\u001b[38;5;252mDONE\u001b[0m\u001b[1;38;5;252m]\u001b[0m\u001b[38;5;252m \u001b[0m\n",
       "\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">              &gt; Messaging can be a great tool for quick updates and clarifications. It's important</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">              &gt; to ensure everyone is on the same page and has access to the information they need.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mLiam\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m              > Messaging can be a great tool for quick updates and clarifications. It's important\u001b[0m\n",
       "\u001b[1;3;38;5;51m              > to ensure everyone is on the same page and has access to the information they need.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:23,836 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #008000; text-decoration-color: #008000; text-decoration: underline\">Liam</span><span style=\"color: #008000; text-decoration-color: #008000\"> acts: </span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">[</span><span style=\"color: #008000; text-decoration-color: #008000\">THINK</span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">]</span><span style=\"color: #008000; text-decoration-color: #008000\"> </span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">          &gt; Samantha is right. Messaging is indeed a useful tool for quick updates and ensuring</span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">          &gt; everyone is aligned.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;32mLiam\u001b[0m\u001b[32m acts: \u001b[0m\u001b[1;32m[\u001b[0m\u001b[32mTHINK\u001b[0m\u001b[1;32m]\u001b[0m\u001b[32m \u001b[0m\n",
       "\u001b[32m          > Samantha is right. Messaging is indeed a useful tool for quick updates and ensuring\u001b[0m\n",
       "\u001b[32m          > everyone is aligned.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:28,120 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold; text-decoration: underline\">Liam</span><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\"> acts: [TALK] </span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">          &gt; Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial</span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">          &gt; for our team's success.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;4;38;5;40mLiam\u001b[0m\u001b[1;38;5;40m acts: \u001b[0m\u001b[1;38;5;40m[\u001b[0m\u001b[1;38;5;40mTALK\u001b[0m\u001b[1;38;5;40m]\u001b[0m\u001b[1;38;5;40m \u001b[0m\n",
       "\u001b[1;38;5;40m          > Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial\u001b[0m\n",
       "\u001b[1;38;5;40m          > for our team's success.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:32,225 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; text-decoration: underline\">Liam</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> acts: </span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">[</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\">DONE</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">]</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> </span>\n",
       "\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;38;5;252mLiam\u001b[0m\u001b[38;5;252m acts: \u001b[0m\u001b[1;38;5;252m[\u001b[0m\u001b[38;5;252mDONE\u001b[0m\u001b[1;38;5;252m]\u001b[0m\u001b[38;5;252m \u001b[0m\n",
       "\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; for our team's success.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mLiam\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m          > Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial\u001b[0m\n",
       "\u001b[1;3;38;5;51m          > for our team's success.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:36,364 - tinytroupe - INFO - [Some Corp Inc.] Running world simulation step 2 of 2.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ff00; text-decoration-color: #00ff00\">─────────────────────────────────────────── </span>Some Corp Inc. step <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span> of <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span><span style=\"color: #00ff00; text-decoration-color: #00ff00\"> ────────────────────────────────────────────</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[92m─────────────────────────────────────────── \u001b[0mSome Corp Inc. step \u001b[1;36m2\u001b[0m of \u001b[1;36m2\u001b[0m\u001b[92m ────────────────────────────────────────────\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:36,371 - tinytroupe - INFO - [Some Corp Inc.] No timedelta provided, so the datetime was not advanced.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:36,738 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #008000; text-decoration-color: #008000; text-decoration: underline\">Samantha</span><span style=\"color: #008000; text-decoration-color: #008000\"> acts: </span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">[</span><span style=\"color: #008000; text-decoration-color: #008000\">THINK</span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">]</span><span style=\"color: #008000; text-decoration-color: #008000\"> </span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">              &gt; Liam's point about staying connected and informed is essential for our team's</span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">              &gt; success.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;32mSamantha\u001b[0m\u001b[32m acts: \u001b[0m\u001b[1;32m[\u001b[0m\u001b[32mTHINK\u001b[0m\u001b[1;32m]\u001b[0m\u001b[32m \u001b[0m\n",
       "\u001b[32m              > Liam's point about staying connected and informed is essential for our team's\u001b[0m\n",
       "\u001b[32m              > success.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:40,786 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold; text-decoration: underline\">Samantha</span><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\"> acts: [TALK] </span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">              &gt; I completely agree, Liam. Consistent communication through messaging can really</span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">              &gt; streamline our processes and ensure everyone is aligned.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;4;38;5;40mSamantha\u001b[0m\u001b[1;38;5;40m acts: \u001b[0m\u001b[1;38;5;40m[\u001b[0m\u001b[1;38;5;40mTALK\u001b[0m\u001b[1;38;5;40m]\u001b[0m\u001b[1;38;5;40m \u001b[0m\n",
       "\u001b[1;38;5;40m              > I completely agree, Liam. Consistent communication through messaging can really\u001b[0m\n",
       "\u001b[1;38;5;40m              > streamline our processes and ensure everyone is aligned.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mSamantha\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:45,166 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; text-decoration: underline\">Samantha</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> acts: </span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">[</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\">DONE</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">]</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> </span>\n",
       "\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;38;5;252mSamantha\u001b[0m\u001b[38;5;252m acts: \u001b[0m\u001b[1;38;5;252m[\u001b[0m\u001b[38;5;252mDONE\u001b[0m\u001b[1;38;5;252m]\u001b[0m\u001b[38;5;252m \u001b[0m\n",
       "\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">              &gt; I completely agree, Liam. Consistent communication through messaging can really</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">              &gt; streamline our processes and ensure everyone is aligned.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mLiam\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m              > I completely agree, Liam. Consistent communication through messaging can really\u001b[0m\n",
       "\u001b[1;3;38;5;51m              > streamline our processes and ensure everyone is aligned.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:49,480 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #008000; text-decoration-color: #008000; text-decoration: underline\">Liam</span><span style=\"color: #008000; text-decoration-color: #008000\"> acts: </span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">[</span><span style=\"color: #008000; text-decoration-color: #008000\">THINK</span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">]</span><span style=\"color: #008000; text-decoration-color: #008000\"> </span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">          &gt; It's great to see Samantha on the same page about the importance of messaging for team</span>\n",
       "<span style=\"color: #008000; text-decoration-color: #008000\">          &gt; alignment.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;32mLiam\u001b[0m\u001b[32m acts: \u001b[0m\u001b[1;32m[\u001b[0m\u001b[32mTHINK\u001b[0m\u001b[1;32m]\u001b[0m\u001b[32m \u001b[0m\n",
       "\u001b[32m          > It's great to see Samantha on the same page about the importance of messaging for team\u001b[0m\n",
       "\u001b[32m          > alignment.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:53,519 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold; text-decoration: underline\">Liam</span><span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\"> acts: [TALK] </span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">          &gt; I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively</span>\n",
       "<span style=\"color: #00d700; text-decoration-color: #00d700; font-weight: bold\">          &gt; to keep our team aligned and informed.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;4;38;5;40mLiam\u001b[0m\u001b[1;38;5;40m acts: \u001b[0m\u001b[1;38;5;40m[\u001b[0m\u001b[1;38;5;40mTALK\u001b[0m\u001b[1;38;5;40m]\u001b[0m\u001b[1;38;5;40m \u001b[0m\n",
       "\u001b[1;38;5;40m          > I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively\u001b[0m\n",
       "\u001b[1;38;5;40m          > to keep our team aligned and informed.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">: </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">[</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">THOUGHT</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">]</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\"> </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-style: italic\">          &gt; I will now act a bit, and then issue DONE.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m --> \u001b[0m\u001b[2;3;4;38;5;51mLiam\u001b[0m\u001b[2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[2;3;38;5;51m \u001b[0m\n",
       "\u001b[2;3;38;5;51m          > I will now act a bit, and then issue DONE.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2024-11-04 22:51:58,122 - tinytroupe - INFO - Waiting 2.0 seconds before next API request (to avoid throttling)...\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; text-decoration: underline\">Liam</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> acts: </span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">[</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\">DONE</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0; font-weight: bold\">]</span><span style=\"color: #d0d0d0; text-decoration-color: #d0d0d0\"> </span>\n",
       "\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[4;38;5;252mLiam\u001b[0m\u001b[38;5;252m acts: \u001b[0m\u001b[1;38;5;252m[\u001b[0m\u001b[38;5;252mDONE\u001b[0m\u001b[1;38;5;252m]\u001b[0m\u001b[38;5;252m \u001b[0m\n",
       "\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; to keep our team aligned and informed.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1;3;4;38;5;51mLiam\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m          > I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively\u001b[0m\n",
       "\u001b[1;3;38;5;51m          > to keep our team aligned and informed.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "company.run(2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can now extract the conversations, which form the synthetic corpus we wanted."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"margin:0px;;white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2024</span>-<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">11</span>-04T<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-weight: bold\">22:50:44</span>.<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">514465</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">USER</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">          &gt; Message each other to get work done.</span>\n",
       "<span style=\"color: #00ffff; text-decoration-color: #00ffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic\"> acts: [THINK] </span>\n",
       "<span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic\">              &gt; I should consider how messaging can improve our workflow and collaboration.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\"> acts: [TALK] </span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\">              &gt; Messaging can be a great tool for quick updates and clarifications. It's important</span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\">              &gt; to ensure everyone is on the same page and has access to the information they need.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #e7e7e7; text-decoration-color: #e7e7e7; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #e7e7e7; text-decoration-color: #e7e7e7; font-weight: bold; font-style: italic\"> acts: [DONE] </span>\n",
       "\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">          &gt; Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">          &gt; for our team's success.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic\"> acts: [THINK] </span>\n",
       "<span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic\">              &gt; Liam's point about staying connected and informed is essential for our team's</span>\n",
       "<span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f; font-weight: bold; font-style: italic\">              &gt; success.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\"> acts: [TALK] </span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\">              &gt; I completely agree, Liam. Consistent communication through messaging can really</span>\n",
       "<span style=\"color: #7feb7f; text-decoration-color: #7feb7f; font-weight: bold; font-style: italic\">              &gt; streamline our processes and ensure everyone is aligned.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [THOUGHT] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">              &gt; I will now act a bit, and then issue DONE.</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #e7e7e7; text-decoration-color: #e7e7e7; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #e7e7e7; text-decoration-color: #e7e7e7; font-weight: bold; font-style: italic\"> acts: [DONE] </span>\n",
       "\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Date and time of events: 2024-11-04T22:50:44.514465</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Liam</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\"> --&gt; </span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic; text-decoration: underline\">Samantha</span><span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">: [CONVERSATION] </span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">          &gt; I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively</span>\n",
       "<span style=\"color: #7fffff; text-decoration-color: #7fffff; font-weight: bold; font-style: italic\">          &gt; to keep our team aligned and informed.</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       ">>>>>>>>> Date and time of events: \u001b[1;36m2024\u001b[0m-\u001b[1;36m11\u001b[0m-04T\u001b[1;92m22:50:44\u001b[0m.\u001b[1;36m514465\u001b[0m\n",
       "\u001b[1;3;4;38;5;51mUSER\u001b[0m\u001b[1;3;38;5;51m --> \u001b[0m\u001b[1;3;4;38;5;51mSamantha\u001b[0m\u001b[1;3;38;5;51m: \u001b[0m\u001b[1;3;38;5;51m[\u001b[0m\u001b[1;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;3;38;5;51m]\u001b[0m\u001b[1;3;38;5;51m \u001b[0m\n",
       "\u001b[1;3;38;5;51m          > Message each other to get work done.\u001b[0m\n",
       "\u001b[1;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;3;38;5;51m2024\u001b[0m\u001b[1;3;38;5;51m-\u001b[0m\u001b[1;3;38;5;51m11\u001b[0m\u001b[1;3;38;5;51m-04T\u001b[0m\u001b[1;3;38;5;51m22:50:44\u001b[0m\u001b[1;3;38;5;51m.\u001b[0m\u001b[1;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;32mSamantha\u001b[0m\u001b[1;2;3;32m acts: \u001b[0m\u001b[1;2;3;32m[\u001b[0m\u001b[1;2;3;32mTHINK\u001b[0m\u001b[1;2;3;32m]\u001b[0m\u001b[1;2;3;32m \u001b[0m\n",
       "\u001b[1;2;3;32m              > I should consider how messaging can improve our workflow and collaboration.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;40mSamantha\u001b[0m\u001b[1;2;3;38;5;40m acts: \u001b[0m\u001b[1;2;3;38;5;40m[\u001b[0m\u001b[1;2;3;38;5;40mTALK\u001b[0m\u001b[1;2;3;38;5;40m]\u001b[0m\u001b[1;2;3;38;5;40m \u001b[0m\n",
       "\u001b[1;2;3;38;5;40m              > Messaging can be a great tool for quick updates and clarifications. It's important\u001b[0m\n",
       "\u001b[1;2;3;38;5;40m              > to ensure everyone is on the same page and has access to the information they need.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;252mSamantha\u001b[0m\u001b[1;2;3;38;5;252m acts: \u001b[0m\u001b[1;2;3;38;5;252m[\u001b[0m\u001b[1;2;3;38;5;252mDONE\u001b[0m\u001b[1;2;3;38;5;252m]\u001b[0m\u001b[1;2;3;38;5;252m \u001b[0m\n",
       "\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mLiam\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m          > Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m          > for our team's success.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;32mSamantha\u001b[0m\u001b[1;2;3;32m acts: \u001b[0m\u001b[1;2;3;32m[\u001b[0m\u001b[1;2;3;32mTHINK\u001b[0m\u001b[1;2;3;32m]\u001b[0m\u001b[1;2;3;32m \u001b[0m\n",
       "\u001b[1;2;3;32m              > Liam's point about staying connected and informed is essential for our team's\u001b[0m\n",
       "\u001b[1;2;3;32m              > success.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;40mSamantha\u001b[0m\u001b[1;2;3;38;5;40m acts: \u001b[0m\u001b[1;2;3;38;5;40m[\u001b[0m\u001b[1;2;3;38;5;40mTALK\u001b[0m\u001b[1;2;3;38;5;40m]\u001b[0m\u001b[1;2;3;38;5;40m \u001b[0m\n",
       "\u001b[1;2;3;38;5;40m              > I completely agree, Liam. Consistent communication through messaging can really\u001b[0m\n",
       "\u001b[1;2;3;38;5;40m              > streamline our processes and ensure everyone is aligned.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mTHOUGHT\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m              > I will now act a bit, and then issue DONE.\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;252mSamantha\u001b[0m\u001b[1;2;3;38;5;252m acts: \u001b[0m\u001b[1;2;3;38;5;252m[\u001b[0m\u001b[1;2;3;38;5;252mDONE\u001b[0m\u001b[1;2;3;38;5;252m]\u001b[0m\u001b[1;2;3;38;5;252m \u001b[0m\n",
       "\n",
       "\u001b[1;2;3;38;5;51m>>>>>>>>> Date and time of events: \u001b[0m\u001b[1;2;3;38;5;51m2024\u001b[0m\u001b[1;2;3;38;5;51m-\u001b[0m\u001b[1;2;3;38;5;51m11\u001b[0m\u001b[1;2;3;38;5;51m-04T\u001b[0m\u001b[1;2;3;38;5;51m22:50:44\u001b[0m\u001b[1;2;3;38;5;51m.\u001b[0m\u001b[1;2;3;38;5;51m514465\u001b[0m\n",
       "\u001b[1;2;3;4;38;5;51mLiam\u001b[0m\u001b[1;2;3;38;5;51m --> \u001b[0m\u001b[1;2;3;4;38;5;51mSamantha\u001b[0m\u001b[1;2;3;38;5;51m: \u001b[0m\u001b[1;2;3;38;5;51m[\u001b[0m\u001b[1;2;3;38;5;51mCONVERSATION\u001b[0m\u001b[1;2;3;38;5;51m]\u001b[0m\u001b[1;2;3;38;5;51m \u001b[0m\n",
       "\u001b[1;2;3;38;5;51m          > I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively\u001b[0m\n",
       "\u001b[1;2;3;38;5;51m          > to keep our team aligned and informed.\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "people[0].pp_current_interactions()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "reducer = ResultsReducer()\n",
    "\n",
    "def aux_extract_content(focus_agent: TinyPerson, source_agent:TinyPerson, target_agent:TinyPerson, kind:str, event: str, content: str, timestamp:str):\n",
    "\n",
    "    if event == \"TALK\":\n",
    "        author = focus_agent.name\n",
    "    elif event == \"CONVERSATION\":\n",
    "        if source_agent is None:\n",
    "            author = \"USER\"\n",
    "        else:\n",
    "            author = source_agent.name\n",
    "    else:\n",
    "        raise ValueError(f\"Unknown event: {event}\")\n",
    "    \n",
    "    \n",
    "    entry = (author, content)\n",
    "    print(entry)\n",
    "    return entry\n",
    "    \n",
    "\n",
    "\n",
    "reducer.add_reduction_rule(\"TALK\", aux_extract_content)\n",
    "reducer.add_reduction_rule(\"CONVERSATION\", aux_extract_content)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, we obtain the dataframe with the data and save it to a `.csv`, for later use in other applications."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "('USER', 'Message each other to get work done.')\n",
      "('Samantha', \"Messaging can be a great tool for quick updates and clarifications. It's important to ensure everyone is on the same page and has access to the information they need.\")\n",
      "('Liam', \"Absolutely, Samantha. Messaging helps us stay connected and informed, which is crucial for our team's success.\")\n",
      "('Samantha', 'I completely agree, Liam. Consistent communication through messaging can really streamline our processes and ensure everyone is aligned.')\n",
      "('Liam', \"I'm glad we're on the same page, Samantha. Let's continue to use messaging effectively to keep our team aligned and informed.\")\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>author</th>\n",
       "      <th>content</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>USER</td>\n",
       "      <td>Message each other to get work done.</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Samantha</td>\n",
       "      <td>Messaging can be a great tool for quick update...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Liam</td>\n",
       "      <td>Absolutely, Samantha. Messaging helps us stay ...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Samantha</td>\n",
       "      <td>I completely agree, Liam. Consistent communica...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Liam</td>\n",
       "      <td>I'm glad we're on the same page, Samantha. Let...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     author                                            content\n",
       "0      USER               Message each other to get work done.\n",
       "1  Samantha  Messaging can be a great tool for quick update...\n",
       "2      Liam  Absolutely, Samantha. Messaging helps us stay ...\n",
       "3  Samantha  I completely agree, Liam. Consistent communica...\n",
       "4      Liam  I'm glad we're on the same page, Samantha. Let..."
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = reducer.reduce_agent_to_dataframe(people[0], column_names=[\"author\", \"content\"])\n",
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.to_csv(\"../data/extractions/synthetic_data_generation.out.csv\", index=False)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.13"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
